<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:p="http://primefaces.org/ui">

<ui:composition template="/templates/masterLayout.xhtml">

	<ui:define name="title">
			Banco
	</ui:define>

	<ui:define name="content">

		<p:growl id="mensajes" showDetail="true" life="7000" />

		<p:panel id="panel" header="LISTADO DE BANCOS"
			style="margin-bottom:10px;">

			<h:form id="formDataTable">

				<p:focus context="formDataTable" />

				<p:dataTable id="tablaBancos" var="banco"
					value="#{bancoBean.listaBancos}" paginator="true" rows="10"
					styleClass="tablaBanco" emptyMessage="#{msg['lbl.mensajeTabla']}"
					paginatorPosition="bottom"
					rowStyleClass="#{banco.activo eq true ? null:'desactivo'}">

					<f:facet name="header">
						<h:form>
							<p:commandButton value="#{msg['btn.insertar']}"
								update=":formNuevo" oncomplete="PF('bancoDialogoNuevo').show()"
								id="btnNuevo" icon="ui-icon-plus" styleClass="botonNuevo"
								actionListener="#{bancoBean.limpiar}" />
						</h:form>
					</f:facet>

					<p:column headerText="#{msg['lbl.gestionar']}"
						styleClass="columnaCrud">
						<p:tooltip for="btnMostrar" value="MOSTRAR" />
						<p:tooltip for="btnEditar" value="EDITAR" />
						<p:tooltip for="btnEliminar"
							value="#{banco.activo eq true ? msg['lbl.desactivar']:msg['lbl.activar']}" />

						<p:commandButton id="btnMostrar" update=":formMostrar"
							oncomplete="PF('bancoDialogoMostrar').show()"
							icon="ui-icon-newwin">
							<f:setPropertyActionListener value="#{banco}"
								target="#{bancoBean.banco}" />
						</p:commandButton>

						<p:commandButton id="btnEditar" update=":formEditar"
							oncomplete="PF('bancoDialogoEditar').show()"
							icon="ui-icon-pencil">
							<f:setPropertyActionListener value="#{banco}"
								target="#{bancoBean.banco}" />
						</p:commandButton>

						<p:commandButton id="btnEliminar" update=":formEliminar"
							oncomplete="PF('bancoDialogoEliminar').show()"
							icon="#{banco.activo eq true ? 'ui-icon-close':'ui-icon-check'}">
							<f:setPropertyActionListener value="#{banco}"
								target="#{bancoBean.banco}" />
						</p:commandButton>

					</p:column>

					<p:column headerText="NOMBRE" filterBy="#{banco.nombre}"
						styleClass="columnaInfo">  
            			#{banco.nombre}  
        			</p:column>

				</p:dataTable>
			</h:form>
		</p:panel>

		<h:form id="formEliminar">
			<p:dialog widgetVar="bancoDialogoEliminar" severity="alert"
				header="#{msg['lbl.eliminarBanco']}" showEffect="explode"
				hideEffect="fold" modal="false" resizable="false" width="230px"
				style="text-align: center;">
				<h:inputHidden value="#{bancoBean.banco.bancoid}" />
				<br />
				<ui:param name="desactivar"
					value="¿ DESEA DESACTIVAR EL BANCO: #{bancoBean.banco.nombre} ?" />
				<ui:param name="activar"
					value="¿ DESEA ACTIVAR EL BANCO #{bancoBean.banco.nombre} ?" />
				<h:outputText
					value="#{bancoBean.banco.activo eq true ? desactivar : activar}" />
				<br />
				<br />
				<p:commandButton value="#{msg['btn.aceptar']}"
					update=":formDataTable, :mensajes" icon="#{msg['iconoAceptar']}"
					oncomplete="PF('bancoDialogoEliminar').hide()"
					actionListener="#{bancoBean.eliminar}" />
				<p:commandButton value="CANCELAR" type="button"
					onclick="PF('bancoDialogoEliminar').hide()"
					icon="#{msg['iconoCancelar']}" />
			</p:dialog>
		</h:form>

		<p:dialog header="INSERTAR BANCO" widgetVar="bancoDialogoNuevo"
			resizable="false" modal="fasle" showEffect="clip" hideEffect="fold"
			id="dialogoNuevo">

			<h:form id="formNuevo">

				<p:focus context="formNuevo" />

				<h:panelGrid columns="3" cellpadding="5">
					<h:outputText value="NOMBRE:" />
					<p:inputText id="nombre" value="#{bancoBean.banco.nombre}"
						required="true" requiredMessage="INGRESE UN BANCO" label="nombre"
						onblur="this.value=this.value.toUpperCase();" />
					<f:facet name="footer">
						<p:separator />
						<p:commandButton value="#{msg['btn.guardar']}"
							oncomplete="comprobar(xhr, status, args)"
							update=":formDataTable, :mensajes, formNuevo"
							id="btnNuevoAceptar" icon="#{msg['iconoGuardar']}"
							actionListener="#{bancoBean.insertar}" />
						<p:commandButton value="#{msg['btn.cancelar']}"
							oncomplete="PF('bancoDialogoNuevo').hide()" id="btnNuevolimpiar"
							icon="#{msg['iconoCancelar']}"
							actionListener="#{bancoBean.limpiar}" process="@this" />
					</f:facet>
				</h:panelGrid>
			</h:form>
		</p:dialog>

		<script type="text/javascript">
			function handleSubmitRequest(args) {
				if (!args.validationFailed) {
					PF('bancoDialogoNuevo').hide();
					PF('bancoDialogoEditar').hide();
				}
			}

			//<![CDATA[
			function comprobar(xhr, status, args) {
				if (!args.validationFailed && args.error) {
					PF('bancoDialogoNuevo').hide();
					PF('bancoDialogoEditar').hide();
				}
			}
			//]]>
		</script>

		<h:form id="formMostrar">

			<p:dialog header="MOSTRAR BANCO" widgetVar="bancoDialogoMostrar"
				resizable="false" modal="false" showEffect="clip" hideEffect="fold"
				id="dialogoMostrar">

				<h:panelGrid id="panelMostrar" columns="2" cellpadding="8">

					<h:outputText value="NOMBRE:" />
					<h:outputText value="#{bancoBean.banco.nombre}"
						style="font-weight:bold" />
				</h:panelGrid>
			</p:dialog>
		</h:form>

		<p:dialog header="EDITAR BANCO" widgetVar="bancoDialogoEditar"
			resizable="false" modal="false" showEffect="clip" hideEffect="fold"
			id="dialogoEditar">

			<h:form id="formEditar">

				<p:focus context="formEditar" />

				<h:panelGrid id="panelEditar" columns="2" cellpadding="8">

					<h:outputText value="NOMBRE:" />
					<p:inputText value="#{bancoBean.banco.nombre}" required="true"
						requiredMessage="INGRESE UN BANCO"
						onblur="this.value=this.value.toUpperCase();" />

					<f:facet name="footer">
						<p:separator />
						<p:commandButton value="#{msg['btn.guardar']}"
							update=":formDataTable, :mensajes, formEditar"
							oncomplete="comprobar(xhr, status, args)"
							id="btnModificarAceptar" actionListener="#{bancoBean.actualizar}"
							icon="ui-icon-disk" />

						<p:commandButton value="#{msg['btn.cancelar']}"
							oncomplete="PF('bancoDialogoEditar').hide()"
							id="btnModificarlimpiar" icon="ui-icon-close" />
					</f:facet>

				</h:panelGrid>
			</h:form>
		</p:dialog>

	</ui:define>
</ui:composition>
</html>